package com.cskaoyan.service.front.auth;


import com.aliyuncs.exceptions.ClientException;
import com.cskaoyan.bean.bo.front.login.LoginBo;
import com.cskaoyan.bean.vo.front.login.LoginData;
import com.cskaoyan.bean.vo.front.register.RegisterBo;

import javax.servlet.http.HttpServletRequest;

/**
 * 用户登录服务
 *
 * @author 李然
 * @date 2022/10/13
 */
public interface UserLoginService {

    /**
     * 查询并返回用户信息
     *
     * @param loginBo 用户名、密码对象
     * @return 用户数据
     */
    LoginData login(LoginBo loginBo);

// TODO: 2022/10/13  //    autu/ 下面还有注册发送短信等选做
    /**
     * solution:
     *
     */

    int resetPasswordByMobile(RegisterBo params);

    /**
     * 发送验证码
     *
     * @param phone 手机号码
     * @param code  验证码
     */
    void sendMessage(String phone, String code, HttpServletRequest request) throws ClientException, ClientException;

    /**
     * 注册账号的逻辑
     *
     * @param registerBo 注册信息
     */
    int authRegister(RegisterBo registerBo, HttpServletRequest request);

}
